Major cellular telecommunications system types include those operating according to the Global Services for Mobile (GSM) Standard, the TIA/EIA/IS-95 Mobile Station-Base Station Compatibility Standard for Dual Mode Wide Band Spread Spectrum Cellular Systems (IS-95), the TIA/EIA/IS-136 Mobile Station-Base Station Compatibility Standard (IS-136), and the TIA/EIA 553 Analog Standard (AMPS/TACS). Other major cellular systems include those operating in the personal communications system (PCS) band according to the IS-95 based ANSI-J-STD-008 1.8-2.0 GHz standard or those operating according to the GSM based PCS1900 (1900 MHz frequency range) standard.
Currently, each of the major cellular system standards bodies is implementing data services into its digital cellular specifications. A data service specification has been finalized for GSM, and data service specifications compatible with the IS-95 and IS-136 standards are being prepared. The IS-95 data service standard is contained in the TIA/EIA document, "Data Service Options for Wideband Spread Spectrum Systems," PN-3676.1-PN-3676.6, which is to be published as TIA/EIA/IS-707.1-TIA/EIA/IS-707.6 (IS-707).
In an IS-707 based system, a radio link protocol (RLP) is utilized to provide an octet stream service over IS-95 forward and reverse traffic channels. The RLP is defined in Section IS-707.2 of IS-707. Each octet of the RLP comprises 8 bits of digital data. The octet stream service carries the variable length data packets of the point-to-point protocol layer. The RLP divides the point-to-point protocol packets into IS-95 traffic channel frames for transmission. The IS-95 traffic channel frames form the physical layer transmission frames. There is no direct relationship between point-to-point protocol packets and IS-95 frames. A large packet may span several IS-95 traffic channel frames, or a single traffic channel frame may include all or part of several point-to-point packets. The RLP does not take the higher level traffic channel framing into account but operates on a featureless octet stream, delivering the octets to the IS-95 multiplex sublayer for transmission in the order the octets are received from the point-to-point layer. The data may be transmitted on the traffic channel as primary traffic or, for example, along with speech, as secondary traffic. The IS-707 RLP generates and supplies one frame to the IS-95 multiple sublayer every 20 msec. The size of the RLP frame depends on the type of transmission frame available for transmitting the RLP frame.
The RLP utilizes RLP control frames to control the transmission of data and RLP data frames for the transmission of data at the RLP level.
The format of RLP control and data frames is defined so that each RLP frame includes an 8-bit sequence number field (SEQ). Each RLP data frame SEQ field contains the sequence number of that particular data frame. The sequence numbers are used to identify each received data frame and allow determination of data frames that have not been received. The RLP control frame SEQ field is not used to indicate the sequence number of the control frame but contains the next data frame sequence number to allow quick detection of erased data frames.
Each RLP data frame includes a number of data bits, with a maximum number of data bits allowed for each frame. The maximum number of data bits allowed in a data frame depends upon the IS-95 multiplex subchannel used and the transmission frame available. The range can vary. For example, for primary traffic on the traffic channel, using multiplex option 2 at IS-95 full rate, the maximum number of data bits allowed is 266; and for primary traffic on the traffic channel using multiplex option 1 at IS-95 half rate, the maximum number of data bits allowed is 80. When fewer than the maximum number of bits are transmitted in a frame, padding is used to fill out the data field. Each RLP data frame also includes an RLP frame type (CTL) field and a data length (LEN) field. The LEN field indicates the length of the data in the frame in octets. For unsegmented data frames, the CTL frame is one bit and is set to 0. For segmented data frames, the CTL frame contains 4 bits and can be set to indicate whether the data in the frame includes the first LEN octets, the next LEN octets, or the last LEN octets of the segmented data frame.
The RLP control frame may function as a negative acknowledgment (NAK) RLP control frame to request retransmission of unreceived data frames. An NAK RLP control frame includes a 4-bit frame type (CTL) field, a 4-bit length (LEN) field, an 8-bit FIRST field, an 8-bit LAST field, a reserved field (RSVD), a frame check sequence field (FCS) and padding. An RLP control frame having the frame type field set to indicate negative acknowledgment (NAK) may then be used to request retransmission of a particular data frame or a particular sequence of data frames. For example, a mobile station expecting a data frame having a particular sequence number would transmit an NAK control frame to the base station if the mobile determined that the data frame was missed from the sequence numbers of received RLP frames. The FIRST and LAST fields of the RLP NAK control frame are used to indicate the particular data frame or sequence (indicated as a range beginning at the sequence number indicated by the FIRST field and ending at the sequence number indicated by the LAST field) of data frames that are requested to be retransmitted. In IS-707, the number of requests for retransmission of a data frame is a set number and the initiation of subsequent requests for retransmission after the initial NAK control frame is sent is controlled by an NAK retransmission timer. When RLP frames are carried as primary or secondary traffic, the retransmission timer is implemented as a frame counter. The NAK retransmission counter for a data frame is started upon the transmission of an NAK RLP control frame requesting retransmission of that data frame.
If the data frame has not arrived at the receiver when its NAK retransmission timer expires, the receiver sends a second NAK control frame requesting retransmission of that data frame. This NAK control frame is transmitted twice. The NAK retransmission timer for this data frame is then restarted. If the data frame has not arrived at the receiver when its NAK retransmission timer has expired twice, the receiver sends a third NAK control frame requesting retransmission of that data frame. Each NAK control frame transmitted as the result of a retransmission timer expiring a second time is transmitted three times.
An NAK abort timer is then started in the receiver upon transmission of the third NAK control frame. The NAK abort timer is implemented and expires identically to the NAK retransmission timer. If the data frame has not arrived at the receiver when its NAK abort timer has expired, the NAK is aborted and no further NAK control frames are transmitted for that data frame.
The IS-707 NAK retransmission scheme results in a maximum number of three retransmission requests that include a maximum number of six NAK RLP control frames being transmitted for a particular unreceived data frame.
If the size of a frame to be retransmitted exceeds the number of data octets available in the IS-95 traffic channel frame at the time of retransmission, the IS-707 retransmission scheme provides for the segmentation of retransmitted RLP data frames. The IS-707 retransmission scheme is designed so that a retransmitted RLP data frame may be sent in appropriate data frames up to three segments. Each segment is sent as a segmented RLP data frame in a separate IS-95 traffic channel frame. No reassembly with other RLP frames is performed in the transmitter. The segments are divided, if necessary, sent in segmented RLP data frames, and reassembled at the receiver.
If the size of an RLP data frame to be retransmitted is smaller than the number of data octets available in the IS-95 traffic channel frame at the time of retransmission, the extra octets in the RLP data frame are padded with zeros to fill out the IS-95 traffic channel frame. Because the largest number of bits available in an IS-95 traffic channel frame is 266 bits, the system can accept this loss of overhead.
In proposed third generation CDMA systems a much wider range of frame types may be used to carry data traffic as compared to an IS-95/IS-707 based system. For example, third generation CDMA systems have been proposed that may use a fundamental channel and one or more supplemental channels to carry data traffic. The fundamental traffic channel and each of the supplemental traffic channels may use a wide range of different physical layer transmission frame types and sizes. Those third generation systems may transmit at much higher data rates than an IS-95/IS-707 based system. Because of a larger range in physical layer transmission frame size, a retransmitted RLP data frame may be much smaller than the space available in the physical layer transmission frame used to send the RLP data frame. When a retransmitted frame size is much smaller than the frame size available for retransmission, padding the unused portion of the frame may cause a very large waste of bandwidth and may not be an acceptable solution, as it was for IS-95/IS-707. For example, if the largest transmission frame carried 2000 bits and the smallest transmission frame carried 200 bits, as has been proposed, retransmission of an RLP frame originally carried in a small transmission frame would result in a waste of 1800 bits or 90% of the frame, if zero padding were used.